Release 10.1A: OpenEdge Development:
ProDataSets
Setting attributes for individual temp-table parameters
There are three attributes you can use to specify or reduce the amount of schema information marshaled for individual temp-table parameters.
The first attribute lets you specify the amount of schema information to pass when the temp-table is marshaled, as shown:
Table 2–3 lists the SCHEMA-MARSHAL attribute values.
If set to the Unknown value (
?), the default value is FULL.The second attribute eliminates all schema description from the parameter:
If you set this logical attribute to true on a temp-table, then no schema information is passed when the temp-table is marshaled. This includes index descriptions and field information. The receiving side must have a static definition to receive the temp-table into.
Note: TheNO-SCHEMA-MARSHALattribute is supported only for backward compatibility. Use theSCHEMA-MARSHALattribute instead. TheNO-SCHEMA-MARSHALattribute corresponds to theSCHEMA-MARSHALattribute with a value of "NONE".The third attribute reduces the schema information passed to the minimum needed to validate or establish the temp-table dynamically in the receiving procedure:
If you set this logical attribute to true on a temp-table, then only minimum schema information is passed along with the data. This includes the field name and data type and extent.
Note: TheMIN-SCHEMA-MARSHALattribute is supported only for backward compatibility. Use theSCHEMA-MARSHALattribute instead. TheMIN-SCHEMA-MARSHALattribute corresponds to theSCHEMA-MARSHALattribute with a value of "MIN".The temp-table
ERROR-STRING(a new attribute used by ProDataSets, described in the "Setting and using ERROR, REJECTED, and ERROR-STRING" section) is also passed. Values for other field attributes are passed as the Unknown value (?), so that the protocol for the call remains the same but the amount of data is greatly reduced. No index information is passed. You can use this option even when the receiving procedure has a dynamic parameter (TABLE-HANDLEfor a single temp-table orDATASET-HANDLEfor a ProDataSet), because the field names, along with the data type and extent, can be used to construct a minimally complete dynamic temp-table on the receiving side without setting all the other field attributes.If you want to eliminate or minimize temp-table schema information passed as part of a ProDataSet parameter, you must set the
Note: If you specify both theSCHEMA-MARSHALattribute on each temp-table in the ProDataSet. It’s possible you might set it differently for different tables, depending on whether you have static definitions of all the temp-tables on the other side of the call.SCHEMA-MARSHALattribute and theNO-SCHEMA-MARSHALorMIN-SCHEMA-MARSHALattribute for an individual temp-table, Progress uses the attribute you most recently specified. TheNO-SCHEMA-MARSHALandMIN-SCHEMA-MARSHALattributes are supported only for backward compatibility. Use theSCHEMA-MARSHALattribute instead.Setting any of these temp-table attributes overrides the setting of the Temp-table Schema Marshal (
-ttmarshal) startup parameter for an individual temp-table parameter. For more information about these temp-table attributes, see OpenEdge Development: Progress 4GL Reference . For more information about the-ttmarshalstartup parameter, see OpenEdge Deployment: Startup Command and Parameter Reference .
|
Copyright © 2005 Progress Software Corporation www.progress.com Voice: (781) 280-4000 Fax: (781) 280-4095 |